struct _HANDLE_TABLE// Size=0x5c
{
    unsigned long NextHandleNeedingPool;// Offset=0x0 Size=0x4
    long ExtraInfoPages;// Offset=0x4 Size=0x4
    unsigned long TableCode;// Offset=0x8 Size=0x4
    struct _EPROCESS * QuotaProcess;// Offset=0xc Size=0x4
    struct _LIST_ENTRY HandleTableList;// Offset=0x10 Size=0x8
    unsigned long UniqueProcessId;// Offset=0x18 Size=0x4
    unsigned long Flags;// Offset=0x1c Size=0x4
    unsigned char StrictFIFO:1;// Offset=0x1c Size=0x1 BitOffset=0x0 BitSize=0x1
    unsigned char EnableHandleExceptions:1;// Offset=0x1c Size=0x1 BitOffset=0x1 BitSize=0x1
    unsigned char Rundown:1;// Offset=0x1c Size=0x1 BitOffset=0x2 BitSize=0x1
    unsigned char Duplicated:1;// Offset=0x1c Size=0x1 BitOffset=0x3 BitSize=0x1
    struct _EX_PUSH_LOCK HandleContentionEvent;// Offset=0x20 Size=0x4
    struct _EX_PUSH_LOCK HandleTableLock;// Offset=0x24 Size=0x4
    struct _HANDLE_TABLE_FREE_LIST FreeLists[1];// Offset=0x28 Size=0x34
    unsigned char ActualEntry[20];// Offset=0x28 Size=0x14
    struct _HANDLE_TRACE_DEBUG_INFO * DebugInfo;// Offset=0x3c Size=0x4
};